package com.jcp.dao;

import java.util.List;


import com.jcp.entity.UserMessage;

import com.jcp.entity.Users;
import com.jcp.util.PageData;

/**
 * 员工管理的方法
 * @author 朱徐烽
 *
 */
public interface UserDao {

	/**
	 * 分页查询、模糊查询
	 * @param page 页数
	 * @param pageSize 页面总数
	 * @param keyword 关键字
	 * @return PageData类型
	 */
	PageData<Users> selAllUsersByPage(int page,int pageSize,String keyword);
	
	/**
	 * 员工注册的方法
	 * @param users Users类型
	 * @return boolean
	 */
	boolean addUsers(Users users);
	
	/**
	 * 删除员工的方法
	 * @param userId int 员工id
	 * @return boolean
	 */
	boolean delUsersByUserId(int userId);
	
	/**
	 * 修改员工信息的方法
	 * @param users Users类型
	 * @return boolean
	 */
	boolean updUsers(Users users);
	
	/**
	 * 登录时查询用户是否存在的方法
	 * @param UserName String 用户名
	 * @param UserPwd String 用户密码
	 * @return Users
	 */
	Users selUsersByNameAndPwd(String UserName,String UserPwd);
	/**
	 * User模糊查询查询
	 * @param Users users 用户类
	 * @param String strLike 模糊字段
	 * @return Users集合
	 */
	List<Users> selUsersMo(Users users,String strLike);
	

	/**
	 * 员工修改密码的方法
	 * @param userPwd String 目标密码
	 * @param userId int 目标工号 
	 * @return boolean
	 */
	boolean updUserPwd(String userPwd,int userId);

	
	
	/**
	 * 查询用户部分信息的方法
	 * @param userId int 用户工号
	 * @return
	 */
	List<UserMessage> selUserMessage(int userId);
	
	/**
	 * 根据id和密码验证用户是否存在
	 * @param password String 用户密码
	 * @param userId int 用户Id
	 * @return
	 */
	boolean selUserByIdAndPwd(String password,int userId);
	
}
